package com.joolun.mall.entity;

import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.joolun.common.annotation.Excel;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.util.Date;

/**
 * 商品SKU基本信息对象 sku_basic
 * 
 * @author www.joolun.com
 * @date 2025-05-20
 */

@Data
@TableName("sku_basic")
@EqualsAndHashCode(callSuper = true)
public class SkuBasic extends Model<SkuBasic>
{
    private static final long serialVersionUID = 1L;

    /** SKU主键ID */
    private Integer skuId;

//    /** 父SKU主键ID（如：跟款时会记录） */
//    @Excel(name = "父SKU主键ID", readConverterExp = "如=：跟款时会记录")
//    private Integer parentSkuId;

    /** SKU编码 */
    @Excel(name = "SKU编码")
    private String skuCode;

    /** SKU名称 */
    @Excel(name = "SKU名称")
    private String skuName;

    /** SPU主键ID */
    @Excel(name = "SPU主键ID")
    private Long spuId;

    /** SPU编码 */
    @Excel(name = "SPU编码")
    private String spuCode;

    /** SKU图片 */
    @Excel(name = "SKU图片")
    private String skuImg;

    @JsonIgnore
    /** SKU状态：0启用、1停用 */
    @Excel(name = "SKU状态：0启用、1停用")
    private Integer skuStatus;

//    /** 条码（即：69码） */
//    @Excel(name = "条码", readConverterExp = "即=：69码")
//    private String barcode;

    /** 颜色编码 */
    @Excel(name = "颜色编码")
    private String colorCode;

    /** 颜色名称 */
    @Excel(name = "颜色名称")
    private String color;

//    /** 尺码组 */
//    @Excel(name = "尺码组")
//    private String sizeGroup;

    /** 尺码编码 */
    @Excel(name = "尺码编码")
    private String sizeCode;

    /** 尺码名称 */
    @Excel(name = "尺码名称")
    private String size;

    /** 排序级别 */
    @Excel(name = "排序级别")
    private Integer sort;

//    /** 面料成分 */
//    @Excel(name = "面料成分")
//    private String composition;
//
//    /** 零售价 */
//    @Excel(name = "零售价")
//    private BigDecimal retailPrice;
//
//    /** 规格码 */
//    @Excel(name = "规格码")
//    private String specificationCode;
//
//    /** 【作废】规格型号 */
//    @Excel(name = "【作废】规格型号")
//    private String specifications;
//
//    /** 尺寸 */
//    @Excel(name = "尺寸")
//    private String specificationRemark;
//
//    /** 【作废】重量 */
//    @Excel(name = "【作废】重量")
//    private BigDecimal weight;
//
//    /** 【作废】上下装 */
//    @Excel(name = "【作废】上下装")
//    private String topAndBottom;
//
//    /** 上下装 */
//    @Excel(name = "上下装")
//    private String clothing;
//
//    /** 大小标 */
//    @Excel(name = "大小标")
//    private String sizeLabel;
//
//    /** 供应商色号 */
//    @Excel(name = "供应商色号")
//    private String vendorItemColor;
//
//    /** 【作废】支数 */
//    @Excel(name = "【作废】支数")
//    private String fabricCount;
//
//    /** 是否被引用：0否、1是 */
//    @Excel(name = "是否被引用：0否、1是")
//    private Integer referenced;
//
//    /** 数据同步旺店通状态 0-新增未同步 1-同步成功 2-更新未同步 3-同步失败 -1-同步失败次数过多 */
//    @Excel(name = "数据同步旺店通状态 0-新增未同步 1-同步成功 2-更新未同步 3-同步失败 -1-同步失败次数过多")
//    private Integer syncWdtStatus;
//
//    /** 数据同步通天晓状态 0-新增未同步 1-同步成功 2-更新未同步 */
//    @Excel(name = "数据同步通天晓状态 0-新增未同步 1-同步成功 2-更新未同步")
//    private Integer syncTtxStatus;
//
//    /** 创建人 */
//    @Excel(name = "创建人")
//    private String createName;


    /** 创建时间 */
    @JsonFormat(pattern = "yyyy-MM-dd hh")
    @JsonIgnore
    @Excel(name = "创建时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date createDate;
//
//    /** 修改人 */
//    @Excel(name = "修改人")
//    private String updateName;

    /** 修改时间 */
    @JsonIgnore
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "修改时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date updateDate;

    /** 租户ID */
    @Excel(name = "租户ID")
    @JsonIgnore
    private Long tenantId;

    /** 删除标记：0未删除、1已删除 */
    @Excel(name = "删除标记：0未删除、1已删除")
    @JsonIgnore
    private Integer isDelete;

}
